home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / The World of Computer Software.iso / srcuc.zip / MAKEFILE < prev    next >
Text File  |  1992-05-05  |  11KB  |  383 lines

  1. # -*- Fundamental -*-
  2.  
  3. # $Header: /scheme/src/microcode/dosutl/RCS/makefile,v 1.1 1992/05/05 07:01:18 jinx Exp $
  4.  
  5. # Makefile for Scheme on DOS
  6.  
  7. TERMCAP_OBJECTS = dostterm.obj tparam.obj # terminfo.obj
  8. TERMCAP_SOURCES = dostterm.c tparam.c # terminfo.c
  9. TERMCAP_LIBS = # -lcurses
  10. GRAPHICS_SOURCES = dosfg.c # starbase.c
  11. GRAPHICS_OBJECTS = dosfg.obj # starbase.obj
  12. GRAPHICS_LIBS = fgp.lib # -lsb1 -lsb2
  13. MACHINE_SWITCHES = -3 -mx -DNO_CONST -DHAS_COMPILER_SUPPORT -Di386
  14. MACHINE_SOURCES = cmpint.c cmpi386.asm
  15. MACHINE_OBJECTS = cmpint.obj cmpi386.obj
  16. GC_HEAD_FILES = gccode.h cmpgc.h cmpint2.h cmpi386.h
  17. USER_PRIM_SOURCES =
  18. USER_PRIM_OBJECTS =
  19. USER_LIBS =
  20. BINDIR = \scheme\microcode
  21. CC = ztc
  22. M4 = # m4
  23. AS = mlx
  24. LDFLAGS =
  25. CFLAGS = -DMIT_SCHEME -DTYPE_CODE_LENGTH=6 $(MACHINE_SWITCHES) -D__STDC__ -Jm -o
  26.  
  27. all: bintopsb.exe psbtobin.exe scheme.exe bchscheme.exe # bchdrn.exe
  28. .c.obj:
  29.     $(CC) $(CFLAGS) -c $*.c
  30. .c.s:
  31.     $(CC) $(CFLAGS) -S $*.c
  32. .m4.asm:
  33.     $(M4)  -DTYPE_CODE_LENGTH=6 $*.m4 > $*.asm
  34. .asm.obj:
  35.     $(AS) /Zm /Cp /c $*.asm
  36.  
  37. SCHEME_SOURCES = $(TERMCAP_SOURCES) $(GRAPHICS_SOURCES) $(USER_PRIM_SOURCES) missing.c
  38. SCHEME_OBJECTS = $(TERMCAP_OBJECTS) $(GRAPHICS_OBJECTS) $(USER_PRIM_OBJECTS) missing.obj
  39. SCHEME_LIB = $(USER_LIBS) $(GRAPHICS_LIBS) $(TERMCAP_LIBS) -lm
  40. CORE_SOURCES = \
  41. $(MACHINE_SOURCES) \
  42. artutl.c \
  43. bignum.c \
  44. bigprm.c \
  45. bitstr.c \
  46. boot.c \
  47. char.c \
  48. comutl.c \
  49. daemon.c \
  50. debug.c \
  51. dfloat.c \
  52. error.c \
  53. extern.c \
  54. fasload.c \
  55. fixnum.c \
  56. flonum.c \
  57. generic.c \
  58. hooks.c \
  59. hunk.c \
  60. intern.c \
  61. interp.c \
  62. intprm.c \
  63. list.c \
  64. lookprm.c \
  65. lookup.c \
  66. obstack.c \
  67. option.c \
  68. osscheme.c \
  69. ostty.c \
  70. prim.c \
  71. primutl.c \
  72. prmcon.c \
  73. ptrvec.c \
  74. purutl.c \
  75. regex.c \
  76. rgxprim.c \
  77. step.c \
  78. storage.c \
  79. string.c \
  80. syntax.c \
  81. sysprim.c \
  82. term.c \
  83. transact.c \
  84. utils.c \
  85. vector.c \
  86. wind.c
  87.  
  88. STD_GC_SOURCES = \
  89. fasdump.c \
  90. gcloop.c \
  91. memmag.c \
  92. purify.c
  93. BCH_GC_SOURCES = \
  94. bchdmp.c \
  95. bchgcl.c \
  96. bchmmg.c \
  97. bchpur.c \
  98. bchutl.c
  99. # DOS
  100. DOS_SOURCES = \
  101. intext.c \
  102. dosfs.c \
  103. dosenv.c \
  104. dosfile.c \
  105. dosio.c \
  106. dosconio.c \
  107. dostty.c \
  108. dostop.c \
  109. dosutil.c \
  110. dossig.c \
  111. dostrap.c \
  112. prdosfs.c \
  113. dossys.c \
  114. doskbd.c \
  115. dosexcp.c \
  116. doskbutl.asm \
  117. dosxcutl.asm \
  118. dosasutl.asm
  119.  
  120. DOS_OBJECTS = \
  121. intext.obj \
  122. dosfs.obj \
  123. dosenv.obj \
  124. dosfile.obj \
  125. dosio.obj \
  126. dosconio.obj \
  127. dostty.obj \
  128. dostop.obj \
  129. dosutil.obj \
  130. dossig.obj \
  131. dostrap.obj \
  132. dossys.obj \
  133. doskbd.obj \
  134. dosexcp.obj \
  135. doskbutl.obj \
  136. dosxcutl.obj \
  137. dosasutl.obj
  138.  
  139. OS_PRIM_SOURCES = \
  140. prosfile.c \
  141. prosfs.c \
  142. prosio.c \
  143. prosterm.c \
  144. prostty.c \
  145. prosenv.c \
  146. prdosfs.c \
  147. prdosenv.c
  148. # prosproc.c \
  149. # pruxsock.c
  150.  
  151. HEAD_FILES = scheme.tch prims.h zones.h locks.h bignum.h \
  152.     $(GC_HEAD_FILES) trap.h lookup.h history.h cmpint.h
  153.  
  154. CORE_OBJECTS = \
  155. $(MACHINE_OBJECTS) \
  156. artutl.obj \
  157. bignum.obj \
  158. bigprm.obj \
  159. bitstr.obj \
  160. boot.obj \
  161. char.obj \
  162. comutl.obj \
  163. daemon.obj \
  164. debug.obj \
  165. dfloat.obj \
  166. error.obj \
  167. extern.obj \
  168. fasload.obj \
  169. fixnum.obj \
  170. flonum.obj \
  171. generic.obj \
  172. hooks.obj \
  173. hunk.obj \
  174. intern.obj \
  175. interp.obj \
  176. intprm.obj \
  177. list.obj \
  178. lookprm.obj \
  179. lookup.obj \
  180. obstack.obj \
  181. option.obj \
  182. osscheme.obj \
  183. ostty.obj \
  184. prim.obj \
  185. primutl.obj \
  186. prmcon.obj \
  187. ptrvec.obj \
  188. purutl.obj \
  189. regex.obj \
  190. rgxprim.obj \
  191. step.obj \
  192. storage.obj \
  193. string.obj \
  194. syntax.obj \
  195. sysprim.obj \
  196. term.obj \
  197. transact.obj \
  198. utils.obj \
  199. vector.obj \
  200. wind.obj
  201.  
  202. OS_PRIM_OBJECTS = \
  203. prosfile.obj \
  204. prosfs.obj \
  205. prosio.obj \
  206. prosterm.obj \
  207. prosenv.obj \
  208. prostty.obj \
  209. prdosenv.obj \
  210. prdosfs.obj
  211. # prosproc.obj \
  212. # pruxsock.obj
  213.  
  214. STD_GC_OBJECTS = \
  215. fasdump.obj \
  216. gcloop.obj \
  217. memmag.obj \
  218. purify.obj
  219. BCH_GC_OBJECTS = \
  220. bchdmp.obj \
  221. bchgcl.obj \
  222. bchmmg.obj \
  223. bchpur.obj \
  224. bchutl.obj
  225.  
  226. SOURCES = $(CORE_SOURCES) $(STD_GC_SOURCES)
  227. OBJECTS = $(CORE_OBJECTS) $(STD_GC_OBJECTS) $(DOS_OBJECTS) $(OS_PRIM_OBJECTS) usrdef.obj
  228.  
  229. BCHSOURCES = $(CORE_SOURCES) $(BCH_GC_SOURCES)
  230. BCHOBJECTS = $(CORE_OBJECTS) $(BCH_GC_OBJECTS) $(DOS_OBJECTS) $(OS_PRIM_OBJECTS) bchdef.obj
  231.  
  232. scheme.exe : $(OBJECTS) $(SCHEME_OBJECTS) scm-ztc.lst
  233.     $(CC) @scm-ztc.lst
  234. bchscheme.exe : $(BCHOBJECTS) $(SCHEME_OBJECTS) bch-ztc.lst
  235.     $(CC) @bch-ztc.lst
  236. findprim.exe : findprim.obj
  237.     $(CC) findprim.obj $(MACHINE_SWITCHES)
  238. bintopsb.exe : bintopsb.obj missing.obj
  239.     $(CC) bintopsb.obj missing.obj $(MACHINE_SWITCHES) $(LDFLAGS)
  240. psbtobin.exe : psbtobin.obj missing.obj
  241.     $(CC) psbtobin.obj missing.obj $(MACHINE_SWITCHES) $(LDFLAGS)
  242. breakup.exe : breakup.obj
  243.     $(CC) breakup.obj $(MACHINE_SWITCHES) $(LDFLAG)
  244. wsize.exe : wsize.obj
  245.     $(CC) wsize.obj $(MACHINE_SWITCHES) $(LDFLAGS)
  246. ppband.exe : ppband.obj
  247.     $(CC) ppband.obj $(MACHINE_SWITCHES) $(LDFLAG)
  248.  
  249. usrdef.c : $(SCHEME_SOURCES) $(SOURCES) $(OS_PRIM_SOURCES) dosconio.c usrdef.tch findprim.exe scm-prm.lst
  250.     rm -f usrdef.c
  251.     ./findprim -o usrdef.c -l .\scm-prm.lst
  252.  
  253. bchdef.c : $(SCHEME_SOURCES) $(BCHSOURCES) $(OS_PRIM_SOURCES) usrdef.tch findprim.exe bch-prm.lst
  254.     rm -f bchdef.c
  255.     ./findprim -o bchdef.c -l .\bch-prm.lst
  256.  
  257. primitive_tables :
  258.     rm -f usrdef.c usrdef.obj bchdef.c bchdef.obj
  259.  
  260. COMMON_OBJECTS = $(CORE_OBJECTS) $(STD_GC_OBJECTS) $(DOS_OBJECTS) $(OS_PRIM_OBJECTS)
  261. 6003_SOURCES = $(X_SOURCES) $(TERMCAP_OBJECTS) $(GRAPHICS_SOURCES)\
  262.       Sgraph_ar.c fft.c array.c\
  263.           image.c
  264. 6003_OBJECTS = $(X_OBJECTS) $(TERMCAP_OBJECTS) $(GRAPHICS_OBJECTS)\
  265.       Sgraph_ar.obj fft.obj array.obj\
  266.           image.obj usr6003.obj
  267. 6003_LIB =  $(USER_LIBS) $(GRAPHICS_LIBS) $(X_LIB) $(TERMCAP_LIBS)\
  268.     -lm
  269.  
  270. scheme.tch : scheme.h oscond.h ansidecl.h dstack.h obstack.h config.h \
  271.     bkpt.h object.h scode.h sdata.h gc.h interp.h stack.h futures.h \
  272.     types.h errors.h returns.h const.h fixobj.h default.h extern.h \
  273.     prim.h intrpt.h critsec.h float.h
  274.     rm -f scheme.tch
  275.     touch scheme.tch
  276.  
  277. psbmap.tch : config.h object.h bignum.h bignumint.h bitstr.h types.h \
  278.     sdata.h const.h psbmap.h $(GC_HEAD_FILES) comlin.h comlin.c
  279.     rm -f psbmap.tch
  280.     touch psbmap.tch
  281.  
  282. usrdef.tch : usrdef.h config.h object.h prim.h
  283.     rm -f usrdef.tch
  284.     touch usrdef.tch
  285.  
  286. # Zortech MAKE seems not to allow redirection
  287. # limits.h : hard-params.exe
  288. #    -./hard-params -l > limits.h
  289.  
  290. # float.h : hard-params.exe
  291. #    -./hard-params -f > float.h
  292.  
  293. hard-params.exe : hard-params.c
  294.     $(CC) hard-params.c $(MACHINE_SWITCHES) -DNO_SIG -DNO_SC $(LDFLAGS)
  295.  
  296. foo $(USER_PRIM_OBJECTS) : $(HEAD_FILES)
  297. interp.obj : scheme.tch locks.h trap.h lookup.h history.h cmpint.h zones.h prmcon.h
  298. hooks.obj : scheme.tch prims.h winder.h history.h
  299. utils.obj : scheme.tch prims.h winder.h history.h cmpint.h
  300. primutl.obj : scheme.tch prims.h prename.h
  301. hunk.obj list.obj step.obj vector.obj sysprim.obj daemon.obj prim.obj extern.obj : \
  302.     scheme.tch prims.h
  303. lookup.obj debug.obj intern.obj : scheme.tch prims.h lookup.h trap.h locks.h
  304. fasload.obj : scheme.tch prims.h osscheme.h osfile.h osio.h $(GC_HEAD_FILES) \
  305.     trap.h option.h prmcon.h load.c fasl.h
  306. fasdump.obj : scheme.tch prims.h osio.h osfile.h osfs.h $(GC_HEAD_FILES) \
  307.     trap.h lookup.h fasl.h dump.c
  308. memmag.obj : scheme.tch prims.h $(GC_HEAD_FILES)
  309. gcloop.obj : scheme.tch $(GC_HEAD_FILES)
  310. purify.obj : scheme.tch prims.h $(GC_HEAD_FILES) zones.h
  311. purutl.obj : scheme.tch prims.h $(GC_HEAD_FILES) zones.h
  312. comutl.obj : scheme.tch prims.h
  313. artutl.obj : scheme.tch
  314. bignum.obj : scheme.tch bignumint.h limits.h
  315. bigprm.obj flonum.obj intprm.obj : scheme.tch prims.h zones.h
  316. generic.obj : scheme.tch prims.h
  317. fixnum.obj : scheme.tch prims.h mul.c
  318. storage.obj : scheme.tch gctype.c
  319. char.obj string.obj dfloat.obj : scheme.tch prims.h
  320. dostterm.obj : scheme.tch prims.h osterm.h
  321. boot.obj : scheme.tch prims.h version.h option.h ostop.h
  322. option.obj : ansidecl.h option.h
  323. term.obj : scheme.tch
  324. missing.obj : config.h
  325. BCHGCC_H = bchgcc.h oscond.h $(GC_HEAD_FILES)
  326. bchdmp.obj : scheme.tch prims.h dosio.h osio.h osfile.h trap.h lookup.h \
  327.     $(BCHGCC_H) fasl.h dump.c
  328. bchdrn.obj : ansidecl.h bchdrn.h
  329. bchmmg.obj : scheme.tch prims.h msdos.h $(BCHGCC_H) option.h bchdrn.h
  330. bchgcl.obj : scheme.tch $(BCHGCC_H)
  331. bchpur.obj : scheme.tch prims.h $(BCHGCC_H) zones.h
  332. bchutl.obj : ansidecl.h
  333. syntax.obj : scheme.tch prims.h edwin.h syntax.h
  334. bitstr.obj : scheme.tch prims.h bitstr.h
  335. regex.obj : scheme.tch syntax.h regex.h
  336. rgxprim.obj : scheme.tch prims.h edwin.h syntax.h regex.h
  337. bintopsb.obj : psbmap.tch trap.h limits.h fasl.h load.c bltdef.h
  338. psbtobin.obj : psbmap.tch float.h fasl.h dump.c
  339. ppband.obj : ansidecl.h config.h errors.h types.h const.h object.h \
  340.            $(GC_HEAD_FILES) sdata.h load.c fasl.h
  341.  
  342. fft.obj : scheme.tch prims.h zones.h array.h image.h
  343. array.obj image.obj : scheme.tch prims.h array.h
  344. cmpint.obj : scheme.tch prim.h $(GC_HEAD_FILES)
  345. osscheme.obj : scheme.tch posixtype.h os.h osscheme.h
  346. ostty.obj : ansidecl.h oscond.h posixtype.h os.h ostty.h osscheme.h
  347. error.obj ptrvec.obj transact.obj : ansidecl.h dstack.h
  348. wind.obj : ansidecl.h dstack.h obstack.h
  349. obstack.obj : obstack.h
  350.  
  351. OS_PRIM_DEPENDENCIES = scheme.tch prims.h posixtype.h os.h
  352. prosenv.obj : osenv.h ostop.h $(OS_PRIM_DEPENDENCIES)
  353. prosfile.obj : osfile.h $(OS_PRIM_DEPENDENCIES)
  354. prosfs.obj : osfs.h $(OS_PRIM_DEPENDENCIES)
  355. prosio.obj : osio.h $(OS_PRIM_DEPENDENCIES)
  356. prosproc.obj : osproc.h $(OS_PRIM_DEPENDENCIES)
  357. prosterm.obj : osterm.h osio.h $(OS_PRIM_DEPENDENCIES)
  358. prostty.obj : ostty.h osctty.h ossig.h osfile.h osio.h $(OS_PRIM_DEPENDENCIES)
  359. prmcon.obj : scheme.tch prims.h prmcon.h $(OS_PRIM_DEPENDENCIES)
  360.  
  361. DOS_DEPENDENCIES = oscond.h ansidecl.h posixtype.h intext.h \
  362.            dstack.h os.h osscheme.h msdos.h dossys.h
  363. dosenv.obj : osenv.h $(DOS_DEPENDENCIES)
  364. dosfile.obj : osfile.h osio.h dosio.h $(DOS_DEPENDENCIES)
  365. dosfs.obj : osfs.h $(DOS_DEPENDENCIES)
  366. dosio.obj : osio.h dosio.h $(DOS_DEPENDENCIES) 
  367. dosconio.obj : scheme.tch prims.h dosscan.h osio.h dosio.h $(DOS_DEPENDENCIES)
  368. dostop.obj : ostop.h dostop.h osctty.h dosutil.h errors.h option.h $(DOS_DEPENDENCIES)
  369. dostty.obj : ostty.h osenv.h osio.h dosio.h osterm.h dosterm.h $(DOS_DEPENDENCIES)
  370. dosutil.obj : dosutil.h $(DOS_DEPENDENCIES)
  371. dossig.obj : ossig.h osctty.h ostty.h critsec.h dosexcp.h doskbd.h $(DOS_DEPENDENCIES)
  372. dostrap.obj: dostrap.h dosexcp.h $(DOS_DEPENDENCIES)
  373. dossys.obj: dossys.h
  374. prdosenv.obj : $(DOS_DEPENDENCIES)
  375. prdosfs.obj : $(DOS_DEPENDENCIES) scheme.h prims.h osfs.h
  376. cmpi386.obj : cmpi386.asm
  377. dosexcp.obj : dosexcp.h dossys.h dosinsn.h
  378. doskbd.obj : doskbd.h dossys.h dosinsn.h
  379. dosasutl.obj : dosasutl.asm
  380. doskbutl.obj : doskbutl.asm
  381. dosxcutl.obj : dosxcutl.asm
  382.  
  383.